<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.9.1"/>
<title>IDA SDK: place_t Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">IDA SDK
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.9.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="files.html"><span>Header&#160;Files</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classplace__t-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">place_t Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Denotes a displayed line. </p>
<p>(location_t would be a better name but it is too late to rename it now)</p>
<p>An object may be displayed on one or more lines. All lines of an object are generated at once and kept in a <a class="el" href="classlinearray__t.html" title="The group of lines corresponding to a single place within a view. ">linearray_t</a> class.</p>
<p><a class="el" href="classplace__t.html" title="Denotes a displayed line. ">place_t</a> is an abstract class, another class must be derived from it. <br />
Currently the following classes are used in IDA:</p>
<p><a class="el" href="classidaplace__t.html" title="A location in a disassembly view. ">idaplace_t</a> - disassembly view <br />
 <a class="el" href="classenumplace__t.html" title="A location in an enum view. ">enumplace_t</a> - enum view <br />
 <a class="el" href="classstructplace__t.html" title="A location in a struct view. ">structplace_t</a> - structure view</p>
<p>Example (<a class="el" href="classidaplace__t.html" title="A location in a disassembly view. ">idaplace_t</a>):</p><pre class="fragment">  004015AC
  004015AC loc_4015AC:                             ; CODE XREF: sub_4014B8+C5j
  004015AC                 xor     eax, eax                                         </pre><p>The first line is denoted by <a class="el" href="classidaplace__t.html" title="A location in a disassembly view. ">idaplace_t</a> with ea=4015AC, lnnum=0 <br />
The second line is denoted by <a class="el" href="classidaplace__t.html" title="A location in a disassembly view. ">idaplace_t</a> with ea=4015AC, lnnum=1 <br />
The third line is denoted by <a class="el" href="classidaplace__t.html" title="A location in a disassembly view. ">idaplace_t</a> with ea=4015AC, lnnum=2</p>
<p>NB: the <a class="el" href="classplace__t.html" title="Denotes a displayed line. ">place_t</a> class may change in the future, do not rely on it </p>
</div>
<p>Inherited by <a class="el" href="classenumplace__t.html">enumplace_t</a>, <a class="el" href="classidaplace__t.html">idaplace_t</a>, <a class="el" href="classsimpleline__place__t.html">simpleline_place_t</a>, <a class="el" href="classstructplace__t.html">structplace_t</a>, and <a class="el" href="structuser__graph__place__t.html">user_graph_place_t</a>.</p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a2290792667079b755a6f40979b241c0d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2290792667079b755a6f40979b241c0d"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classplace__t.html#a2290792667079b755a6f40979b241c0d">lnnum</a></td></tr>
<tr class="memdesc:a2290792667079b755a6f40979b241c0d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of line within the current object. <br /></td></tr>
<tr class="separator:a2290792667079b755a6f40979b241c0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ae14ab4038d37fb100de804658e0ae407"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae14ab4038d37fb100de804658e0ae407"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classplace__t.html#ae14ab4038d37fb100de804658e0ae407">place_t</a> (void)</td></tr>
<tr class="memdesc:ae14ab4038d37fb100de804658e0ae407"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <br /></td></tr>
<tr class="separator:ae14ab4038d37fb100de804658e0ae407"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8519f60eee7c08ade01ba7bbf54651b9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8519f60eee7c08ade01ba7bbf54651b9"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classplace__t.html#a8519f60eee7c08ade01ba7bbf54651b9">place_t</a> (int ln)</td></tr>
<tr class="memdesc:a8519f60eee7c08ade01ba7bbf54651b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <br /></td></tr>
<tr class="separator:a8519f60eee7c08ade01ba7bbf54651b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a4c57545c7b0ea2633ae4bf4a920739"><td class="memItemLeft" align="right" valign="top">virtual void <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classplace__t.html#a3a4c57545c7b0ea2633ae4bf4a920739">print</a> (<a class="el" href="pro_8h.html#a386c10c6aa4340f1d63df85f40454fce">qstring</a> *out_buf, void *ud) const  =0</td></tr>
<tr class="memdesc:a3a4c57545c7b0ea2633ae4bf4a920739"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generate a short description of the location.  <a href="#a3a4c57545c7b0ea2633ae4bf4a920739">More...</a><br /></td></tr>
<tr class="separator:a3a4c57545c7b0ea2633ae4bf4a920739"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aafba907ae8df7eb97a7b51f833039d71"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a> <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classplace__t.html#aafba907ae8df7eb97a7b51f833039d71">touval</a> (void *ud) const  =0</td></tr>
<tr class="memdesc:aafba907ae8df7eb97a7b51f833039d71"><td class="mdescLeft">&#160;</td><td class="mdescRight">Map the location to a number.  <a href="#aafba907ae8df7eb97a7b51f833039d71">More...</a><br /></td></tr>
<tr class="separator:aafba907ae8df7eb97a7b51f833039d71"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3dc2c22a4af467d724a87be8cc845a45"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classplace__t.html">place_t</a> *<a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classplace__t.html#a3dc2c22a4af467d724a87be8cc845a45">clone</a> (void) const  =0</td></tr>
<tr class="memdesc:a3dc2c22a4af467d724a87be8cc845a45"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clone the location.  <a href="#a3dc2c22a4af467d724a87be8cc845a45">More...</a><br /></td></tr>
<tr class="separator:a3dc2c22a4af467d724a87be8cc845a45"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a93a239a8f6f2e6d23f6e5d24ab2b5584"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a93a239a8f6f2e6d23f6e5d24ab2b5584"></a>
virtual void <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classplace__t.html#a93a239a8f6f2e6d23f6e5d24ab2b5584">copyfrom</a> (const <a class="el" href="classplace__t.html">place_t</a> *from)=0</td></tr>
<tr class="memdesc:a93a239a8f6f2e6d23f6e5d24ab2b5584"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy the specified location object to the current object. <br /></td></tr>
<tr class="separator:a93a239a8f6f2e6d23f6e5d24ab2b5584"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65702700c6e8eaf1d4b79e05d23b3d20"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classplace__t.html">place_t</a> *<a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classplace__t.html#a65702700c6e8eaf1d4b79e05d23b3d20">makeplace</a> (void *ud, <a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a> x, int <a class="el" href="classplace__t.html#a2290792667079b755a6f40979b241c0d">lnnum</a>) const  =0</td></tr>
<tr class="memdesc:a65702700c6e8eaf1d4b79e05d23b3d20"><td class="mdescLeft">&#160;</td><td class="mdescRight">Map a number to a location.  <a href="#a65702700c6e8eaf1d4b79e05d23b3d20">More...</a><br /></td></tr>
<tr class="separator:a65702700c6e8eaf1d4b79e05d23b3d20"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adf82b47e3b4e4afd03037fad8228c50c"><td class="memItemLeft" align="right" valign="top">virtual int <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classplace__t.html#adf82b47e3b4e4afd03037fad8228c50c">compare</a> (const <a class="el" href="classplace__t.html">place_t</a> *t2) const  =0</td></tr>
<tr class="memdesc:adf82b47e3b4e4afd03037fad8228c50c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compare two locations except line numbers (lnnum).  <a href="#adf82b47e3b4e4afd03037fad8228c50c">More...</a><br /></td></tr>
<tr class="separator:adf82b47e3b4e4afd03037fad8228c50c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b16c13455ab860b9e24b796887f4740"><td class="memItemLeft" align="right" valign="top">virtual void <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classplace__t.html#a3b16c13455ab860b9e24b796887f4740">adjust</a> (void *ud)=0</td></tr>
<tr class="memdesc:a3b16c13455ab860b9e24b796887f4740"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adjust the current location to point to a displayable object.  <a href="#a3b16c13455ab860b9e24b796887f4740">More...</a><br /></td></tr>
<tr class="separator:a3b16c13455ab860b9e24b796887f4740"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8039d5e4b13f624908a4a7377081e45c"><td class="memItemLeft" align="right" valign="top">virtual bool <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classplace__t.html#a8039d5e4b13f624908a4a7377081e45c">prev</a> (void *ud)=0</td></tr>
<tr class="memdesc:a8039d5e4b13f624908a4a7377081e45c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Move to the previous displayable location.  <a href="#a8039d5e4b13f624908a4a7377081e45c">More...</a><br /></td></tr>
<tr class="separator:a8039d5e4b13f624908a4a7377081e45c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea2b5b32abe1aa93e6e334140fdbae0c"><td class="memItemLeft" align="right" valign="top">virtual bool <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classplace__t.html#aea2b5b32abe1aa93e6e334140fdbae0c">next</a> (void *ud)=0</td></tr>
<tr class="memdesc:aea2b5b32abe1aa93e6e334140fdbae0c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Move to the next displayable location.  <a href="#aea2b5b32abe1aa93e6e334140fdbae0c">More...</a><br /></td></tr>
<tr class="separator:aea2b5b32abe1aa93e6e334140fdbae0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad624b78ee62f4a4de687c94ddbbbfa19"><td class="memItemLeft" align="right" valign="top">virtual bool <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classplace__t.html#ad624b78ee62f4a4de687c94ddbbbfa19">beginning</a> (void *ud) const  =0</td></tr>
<tr class="memdesc:ad624b78ee62f4a4de687c94ddbbbfa19"><td class="mdescLeft">&#160;</td><td class="mdescRight">Are we at the first displayable object?.  <a href="#ad624b78ee62f4a4de687c94ddbbbfa19">More...</a><br /></td></tr>
<tr class="separator:ad624b78ee62f4a4de687c94ddbbbfa19"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a99d3f0090068ba40c918c6563aa61b2b"><td class="memItemLeft" align="right" valign="top">virtual bool <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classplace__t.html#a99d3f0090068ba40c918c6563aa61b2b">ending</a> (void *ud) const  =0</td></tr>
<tr class="memdesc:a99d3f0090068ba40c918c6563aa61b2b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Are we at the last displayable object?.  <a href="#a99d3f0090068ba40c918c6563aa61b2b">More...</a><br /></td></tr>
<tr class="separator:a99d3f0090068ba40c918c6563aa61b2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9885b2461feab3af8477d421bd38b3b2"><td class="memItemLeft" align="right" valign="top">virtual int <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classplace__t.html#a9885b2461feab3af8477d421bd38b3b2">generate</a> (<a class="el" href="pro_8h.html#a823b67c620f6cdca97e1d969ea4a9b02">qstrvec_t</a> *out, int *out_deflnnum, <a class="el" href="kernwin_8hpp.html#a051016ac92685c95d47a7c1850c19632">color_t</a> *out_pfx_color, <a class="el" href="pro_8h.html#a3df5040891132e50157aee66affdf1de">bgcolor_t</a> *out_bgcolor, void *ud, int maxsize) const  =0</td></tr>
<tr class="memdesc:a9885b2461feab3af8477d421bd38b3b2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generate text lines for the current location.  <a href="#a9885b2461feab3af8477d421bd38b3b2">More...</a><br /></td></tr>
<tr class="separator:a9885b2461feab3af8477d421bd38b3b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a29dced345c3b314f35e13440f18dd092"><td class="memItemLeft" align="right" valign="top">virtual void <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classplace__t.html#a29dced345c3b314f35e13440f18dd092">serialize</a> (<a class="el" href="classbytevec__t.html">bytevec_t</a> *out) const  =0</td></tr>
<tr class="memdesc:a29dced345c3b314f35e13440f18dd092"><td class="mdescLeft">&#160;</td><td class="mdescRight">Serialize this instance.  <a href="#a29dced345c3b314f35e13440f18dd092">More...</a><br /></td></tr>
<tr class="separator:a29dced345c3b314f35e13440f18dd092"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af183cc97073e7ff7f59b881358b25ad8"><td class="memItemLeft" align="right" valign="top">virtual bool <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classplace__t.html#af183cc97073e7ff7f59b881358b25ad8">deserialize</a> (const <a class="el" href="pro_8h.html#a65f85814a8290f9797005d3b28e7e5fc">uchar</a> **pptr, const <a class="el" href="pro_8h.html#a65f85814a8290f9797005d3b28e7e5fc">uchar</a> *end)=0</td></tr>
<tr class="memdesc:af183cc97073e7ff7f59b881358b25ad8"><td class="mdescLeft">&#160;</td><td class="mdescRight">De-serialize into this instance.  <a href="#af183cc97073e7ff7f59b881358b25ad8">More...</a><br /></td></tr>
<tr class="separator:af183cc97073e7ff7f59b881358b25ad8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa7146aa33079d8098de84f3dad659df8"><td class="memItemLeft" align="right" valign="top">virtual int <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classplace__t.html#aa7146aa33079d8098de84f3dad659df8">id</a> () const  =0</td></tr>
<tr class="memdesc:aa7146aa33079d8098de84f3dad659df8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the place's ID (i.e., the value returned by <a class="el" href="kernwin_8hpp.html#a21e74833f8eedcf3cbc1447a691d5eb4" title="Register information about a place_t class. ">register_place_class()</a>)  <a href="#aa7146aa33079d8098de84f3dad659df8">More...</a><br /></td></tr>
<tr class="separator:aa7146aa33079d8098de84f3dad659df8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a374ff32c4c9e94129b4ab4cfb9063d55"><td class="memItemLeft" align="right" valign="top">virtual const char *<a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classplace__t.html#a374ff32c4c9e94129b4ab4cfb9063d55">name</a> () const  =0</td></tr>
<tr class="memdesc:a374ff32c4c9e94129b4ab4cfb9063d55"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get this place type name.  <a href="#a374ff32c4c9e94129b4ab4cfb9063d55">More...</a><br /></td></tr>
<tr class="separator:a374ff32c4c9e94129b4ab4cfb9063d55"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad940a7f1d0de7343f6d61cdd836595a2"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a> <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classplace__t.html#ad940a7f1d0de7343f6d61cdd836595a2">toea</a> () const </td></tr>
<tr class="memdesc:ad940a7f1d0de7343f6d61cdd836595a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Map the location to an ea_t.  <a href="#ad940a7f1d0de7343f6d61cdd836595a2">More...</a><br /></td></tr>
<tr class="separator:ad940a7f1d0de7343f6d61cdd836595a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ae4e2531f911f3f4876531cf54342c4"><td class="memItemLeft" align="right" valign="top">virtual bool <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classplace__t.html#a4ae4e2531f911f3f4876531cf54342c4">rebase</a> (const segm_move_infos_t &amp;)</td></tr>
<tr class="memdesc:a4ae4e2531f911f3f4876531cf54342c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Rebase the place instance.  <a href="#a4ae4e2531f911f3f4876531cf54342c4">More...</a><br /></td></tr>
<tr class="separator:a4ae4e2531f911f3f4876531cf54342c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1020aede65b9b9e5c2005ebe5f311b8d"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classplace__t.html">place_t</a> *<a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classplace__t.html#a1020aede65b9b9e5c2005ebe5f311b8d">enter</a> (<a class="el" href="pro_8h.html#a1134b580f8da4de94ca6b1de4d37975e">uint32</a> *) const </td></tr>
<tr class="memdesc:a1020aede65b9b9e5c2005ebe5f311b8d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Visit this place, possibly 'unhiding' a section of text.  <a href="#a1020aede65b9b9e5c2005ebe5f311b8d">More...</a><br /></td></tr>
<tr class="separator:a1020aede65b9b9e5c2005ebe5f311b8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65d2848886522474353a582c6ba07816"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a65d2848886522474353a582c6ba07816"></a>
virtual void <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classplace__t.html#a65d2848886522474353a582c6ba07816">leave</a> (<a class="el" href="pro_8h.html#a1134b580f8da4de94ca6b1de4d37975e">uint32</a>) const </td></tr>
<tr class="memdesc:a65d2848886522474353a582c6ba07816"><td class="mdescLeft">&#160;</td><td class="mdescRight">Leave this place, possibly 'hiding' a section of text that was previously expanded (at <a class="el" href="classplace__t.html#a1020aede65b9b9e5c2005ebe5f311b8d" title="Visit this place, possibly &#39;unhiding&#39; a section of text. ">enter()</a>-time.) <br /></td></tr>
<tr class="separator:a65d2848886522474353a582c6ba07816"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a3a4c57545c7b0ea2633ae4bf4a920739"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> place_t::print </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="pro_8h.html#a386c10c6aa4340f1d63df85f40454fce">qstring</a> *&#160;</td>
          <td class="paramname"><em>out_buf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>ud</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Generate a short description of the location. </p>
<p>This description is used on the status bar. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">out_buf</td><td>the output buffer </td></tr>
    <tr><td class="paramname">ud</td><td>pointer to user-defined context data. Is supplied by <a class="el" href="classlinearray__t.html" title="The group of lines corresponding to a single place within a view. ">linearray_t</a> </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="aafba907ae8df7eb97a7b51f833039d71"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a> <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> place_t::touval </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>ud</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Map the location to a number. </p>
<p>This mapping is used to draw the vertical scrollbar. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">ud</td><td>pointer to user-defined context data. Is supplied by <a class="el" href="classlinearray__t.html" title="The group of lines corresponding to a single place within a view. ">linearray_t</a> </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a3dc2c22a4af467d724a87be8cc845a45"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classplace__t.html">place_t</a>* <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> place_t::clone </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Clone the location. </p>
<dl class="section return"><dt>Returns</dt><dd>a pointer to a copy of the current location in dynamic memory </dd></dl>

</div>
</div>
<a class="anchor" id="a65702700c6e8eaf1d4b79e05d23b3d20"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classplace__t.html">place_t</a>* <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> place_t::makeplace </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>ud</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a>&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>lnnum</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Map a number to a location. </p>
<p>When the user clicks on the scrollbar and drags it, we need to determine the location corresponding to the new scrollbar position. This function is used to determine it. It builds a location object for the specified 'x' and returns a pointer to it. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">ud</td><td>pointer to user-defined context data. Is supplied by <a class="el" href="classlinearray__t.html" title="The group of lines corresponding to a single place within a view. ">linearray_t</a> </td></tr>
    <tr><td class="paramname">x</td><td>number to map </td></tr>
    <tr><td class="paramname">lnnum</td><td>line number to initialize 'lnnum' </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>a static object, no need to destroy it. </dd></dl>

</div>
</div>
<a class="anchor" id="adf82b47e3b4e4afd03037fad8228c50c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual int <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> place_t::compare </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classplace__t.html">place_t</a> *&#160;</td>
          <td class="paramname"><em>t2</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Compare two locations except line numbers (lnnum). </p>
<p>This function is used to organize loops. For example, if the user has selected an range, its boundaries are remembered as location objects. Any operation within the selection will have the following look: for ( loc=starting_location; loc &lt; ending_location; loc.next() ) In this loop, the comparison function is used. </p><dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">-1</td><td>if the current location is less than 't2' </td></tr>
    <tr><td class="paramname">0</td><td>if the current location is equal to than 't2' </td></tr>
    <tr><td class="paramname">1</td><td>if the current location is greater than 't2' </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a3b16c13455ab860b9e24b796887f4740"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> place_t::adjust </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>ud</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Adjust the current location to point to a displayable object. </p>
<p>This function validates the location and makes sure that it points to an existing object. For example, if the location points to the middle of an instruction, it will be adjusted to point to the beginning of the instruction. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">ud</td><td>pointer to user-defined context data. Is supplied by <a class="el" href="classlinearray__t.html" title="The group of lines corresponding to a single place within a view. ">linearray_t</a> </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a8039d5e4b13f624908a4a7377081e45c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> place_t::prev </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>ud</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Move to the previous displayable location. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">ud</td><td>pointer to user-defined context data. Is supplied by <a class="el" href="classlinearray__t.html" title="The group of lines corresponding to a single place within a view. ">linearray_t</a> </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>success </dd></dl>

</div>
</div>
<a class="anchor" id="aea2b5b32abe1aa93e6e334140fdbae0c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> place_t::next </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>ud</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Move to the next displayable location. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">ud</td><td>pointer to user-defined context data. Is supplied by <a class="el" href="classlinearray__t.html" title="The group of lines corresponding to a single place within a view. ">linearray_t</a> </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>success </dd></dl>

</div>
</div>
<a class="anchor" id="ad624b78ee62f4a4de687c94ddbbbfa19"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> place_t::beginning </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>ud</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Are we at the first displayable object?. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">ud</td><td>pointer to user-defined context data. Is supplied by <a class="el" href="classlinearray__t.html" title="The group of lines corresponding to a single place within a view. ">linearray_t</a> </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if the current location points to the first displayable object </dd></dl>

</div>
</div>
<a class="anchor" id="a99d3f0090068ba40c918c6563aa61b2b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> place_t::ending </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>ud</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Are we at the last displayable object?. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">ud</td><td>pointer to user-defined context data. Is supplied by <a class="el" href="classlinearray__t.html" title="The group of lines corresponding to a single place within a view. ">linearray_t</a> </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if the current location points to the last displayable object </dd></dl>

</div>
</div>
<a class="anchor" id="a9885b2461feab3af8477d421bd38b3b2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual int <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> place_t::generate </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="pro_8h.html#a823b67c620f6cdca97e1d969ea4a9b02">qstrvec_t</a> *&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>out_deflnnum</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="kernwin_8hpp.html#a051016ac92685c95d47a7c1850c19632">color_t</a> *&#160;</td>
          <td class="paramname"><em>out_pfx_color</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pro_8h.html#a3df5040891132e50157aee66affdf1de">bgcolor_t</a> *&#160;</td>
          <td class="paramname"><em>out_bgcolor</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>ud</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>maxsize</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Generate text lines for the current location. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">out</td><td>storage for the lines </td></tr>
    <tr><td class="paramname">out_deflnnum</td><td>pointer to the cell that will contain the number of the most 'interesting' generated line </td></tr>
    <tr><td class="paramname">out_pfx_color</td><td>pointer to the cell that will contain the line prefix color </td></tr>
    <tr><td class="paramname">out_bgcolor</td><td>pointer to the cell that will contain the background color </td></tr>
    <tr><td class="paramname">ud</td><td>pointer to user-defined context data. Is supplied by <a class="el" href="classlinearray__t.html" title="The group of lines corresponding to a single place within a view. ">linearray_t</a> </td></tr>
    <tr><td class="paramname">maxsize</td><td>the maximum number of lines to generate </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>number of generated lines </dd></dl>

</div>
</div>
<a class="anchor" id="a29dced345c3b314f35e13440f18dd092"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> place_t::serialize </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classbytevec__t.html">bytevec_t</a> *&#160;</td>
          <td class="paramname"><em>out</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Serialize this instance. </p>
<p>It is fundamental that all instances of a particular subclass of of <a class="el" href="classplace__t.html" title="Denotes a displayed line. ">place_t</a> occupy the same number of bytes when serialized. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">out</td><td>buffer to serialize into </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="af183cc97073e7ff7f59b881358b25ad8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> place_t::deserialize </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="pro_8h.html#a65f85814a8290f9797005d3b28e7e5fc">uchar</a> **&#160;</td>
          <td class="paramname"><em>pptr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="pro_8h.html#a65f85814a8290f9797005d3b28e7e5fc">uchar</a> *&#160;</td>
          <td class="paramname"><em>end</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>De-serialize into this instance. </p>
<p>'pptr' should be incremented by as many bytes as de-serialization consumed. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">pptr</td><td>pointer to a serialized representation of a <a class="el" href="classplace__t.html" title="Denotes a displayed line. ">place_t</a> of this type. </td></tr>
    <tr><td class="paramname">end</td><td>pointer to end of buffer. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>whether de-serialization was successful </dd></dl>

</div>
</div>
<a class="anchor" id="aa7146aa33079d8098de84f3dad659df8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual int <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> place_t::id </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get the place's ID (i.e., the value returned by <a class="el" href="kernwin_8hpp.html#a21e74833f8eedcf3cbc1447a691d5eb4" title="Register information about a place_t class. ">register_place_class()</a>) </p>
<dl class="section return"><dt>Returns</dt><dd>the id </dd></dl>

</div>
</div>
<a class="anchor" id="a374ff32c4c9e94129b4ab4cfb9063d55"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual const char* <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> place_t::name </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get this place type name. </p>
<p>All instances of a given class must return the same string. </p><dl class="section return"><dt>Returns</dt><dd>the place type name. Please try and pick something that is not too generic, as it might clash w/ other plugins. A good practice is to prefix the class name with the name of your plugin. E.g., "myplugin:srcplace_t". </dd></dl>

</div>
</div>
<a class="anchor" id="ad940a7f1d0de7343f6d61cdd836595a2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a> <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> place_t::toea </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Map the location to an ea_t. </p>
<dl class="section return"><dt>Returns</dt><dd>the corresponding ea_t, or BADADDR; </dd></dl>

</div>
</div>
<a class="anchor" id="a4ae4e2531f911f3f4876531cf54342c4"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> place_t::rebase </td>
          <td>(</td>
          <td class="paramtype">const segm_move_infos_t &amp;&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Rebase the place instance. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">infos</td><td>the segments that were moved </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if place was rebased, false otherwise </dd></dl>

</div>
</div>
<a class="anchor" id="a1020aede65b9b9e5c2005ebe5f311b8d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classplace__t.html">place_t</a>* <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> place_t::enter </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="pro_8h.html#a1134b580f8da4de94ca6b1de4d37975e">uint32</a> *&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Visit this place, possibly 'unhiding' a section of text. </p>
<p>If entering that place required some expanding, a <a class="el" href="classplace__t.html" title="Denotes a displayed line. ">place_t</a> should be returned that represents that section, plus some flags for later use by '<a class="el" href="classplace__t.html#a65d2848886522474353a582c6ba07816" title="Leave this place, possibly &#39;hiding&#39; a section of text that was previously expanded (at enter()-time...">leave()</a>'. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">out_flags</td><td>flags to be used together with the <a class="el" href="classplace__t.html" title="Denotes a displayed line. ">place_t</a> that is returned, in order to restore the section to its original state when <a class="el" href="classplace__t.html#a65d2848886522474353a582c6ba07816" title="Leave this place, possibly &#39;hiding&#39; a section of text that was previously expanded (at enter()-time...">leave()</a> is called. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>a <a class="el" href="classplace__t.html" title="Denotes a displayed line. ">place_t</a> corresponding to the beginning of the section of text that had to be expanded. That <a class="el" href="classplace__t.html" title="Denotes a displayed line. ">place_t</a>'s <a class="el" href="classplace__t.html#a65d2848886522474353a582c6ba07816" title="Leave this place, possibly &#39;hiding&#39; a section of text that was previously expanded (at enter()-time...">leave()</a> will be called with the flags contained in 'out_flags' when the user navigates away from it. </dd></dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="kernwin_8hpp.html">kernwin.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.9.1
</small></address>
</body>
</html>
